The present invention relates to data communication networks and more particularly to systems and methods for facilitating interoperation between currently deployed Internet infrastructure and newer Internet infrastructure employing next generation protocols.
To accommodate the explosive growth of the Internet, a very large number of network nodes have been configured to employ IP (Internet Protocol). These nodes range from user workstations to very high throughput core routers. There have been successive versions of IP but as of the filing date of the present application, the predominant variant of IP deployed in the field is IPv4.
In recent years, many service providers have deployed IPv4 core networks that employ a forwarding mechanism referred to as MPLS (Multiprotocol Label Switching). Such networks are referred to herein as MPLS IPv4 networks. MPLS employs labels, rather than the contents of the IP packet to make forwarding decisions at each intermediate node. At each hop, an output interface and a substitute label are selected based solely on the received packet label. This provides advantageous flexibility in the deployment of new beneficial routing schemes. For example, the use of MPLS facilitates traffic engineering to shift traffic from congested paths to paths with excess capacity, fast re-routing around failed links or nodes, and large-scale virtual private network (VPN) deployment.
The Internet engineering community is planning and implementing a shift from IPv4 to IPv6. Advantages of IPv6 include an enormous expansion in the available address space to accommodate both greater ubiquity of Internet-enabled devices as well as less reliance on cumbersome network address translation schemes which have been utilize to conserve addresses. IPv6 also provides highly useful auto-configuration capabilities.
Service providers wish to offer IPv6 connectivity through their core networks while minimizing expense and configuration difficulties. Immediately replacing the core network infrastructure with MPLS IPv6 equipment is economically unviable for many service providers. Reconfiguring MPLS IPv4 routers to support both IPv4 and IPv6 raises challenges in the areas of hardware incompatibility with IPv6 forwarding requirements, network management, stability, and commercial availability of appropriate software.
Despite the fact that MPLS IPv4 networks makes forwarding decisions based on labels rather than IPv4 destination addresses, interoperation with IPv6 equipment is nonetheless problematic. An edge router configured to provide ingress access to the MPLS IPv4 network will expect each incoming packet to have an IPv4 address on which to base a selection of initial label. Furthermore, inter-domain routing information received at the ingress edge node will use the IPv6 addressing scheme to specify an address prefix of a destination network and the address of an edge node of the core network that can be used as a gateway to reach this destination network. Additionally, the mechanism by which labels are distributed among nodes of an MPLS IPv4 network relies on the IPv4 address scheme.
Thus, a need arises to forward IPv6 traffic over the MPLS IPv4 core so that service providers can offer IPv6 services without any upgrading or reconfiguration of their core network. One proposed solution is to employ some type of tunneling mechanism (e.g., IPv6-over-IPv4) where each IPv6 packet is encapsulated into an IPv4 packet that in turn is encapsulated into MPLS. Using this type of encapsulation over MPLS, however, brings several drawbacks. There is extra overhead resulting from the added header information. Furthermore, establishing numerous static tunnels requires additional configuration and storage of state information while use of dynamic tunnels requires support of specific software mechanisms, activation/configuration of these software mechanisms and furthermore involves constraints on IPv6 addresses to be allocated.
What is needed are systems and methods for forwarding IPv6 packets across an MPLS IPv4 network without employing IPv6-over-IPv4 tunnels.